<template>
  <div>
    <common-head title="您的所有联系人" />
    <div class="wrap">
      <van-address-list
        v-model="chosenAddressId"
        :list="contacts"
        default-tag-text="默认"
        @add="onAdd"
        @edit="onEdit"
        @select="choseContact"
      />
      <!-- {{contacts[1]}} -->
      <!-- {{people}} -->
    </div>
  </div>
</template>

<script>
import CommonHead from '../../components/CommonHead.vue'
import { mapState } from 'vuex'
export default {
  data () {
    return {
      chosenAddressId: -1
    }
  },
  created () {
    this.initchoseId()
  },
  methods: {
    initchoseId () {
      // 查找有没有默认联系人
      if (!this.contacts.length) {
        return
      }
      const defaultContact = this.contacts.find((el) => el.isDefault)
      if (defaultContact) {
        // 有默认联系人，优先找默认联系人有的是默认联系人的id
        this.chosenAddressId = defaultContact.id
      } else {
        // 没有找第一个
        this.chosenAddressId = this.contacts[0].id
      }
    },
    onAdd () {
      // 添加联系人
      this.$router.push('/contactAdd')
    },
    // 编辑联系人，第一个参数为联系人，第二个为下标
    onEdit (contact, index) {
      // 跳转路由，传入id（index）
      this.$router.push({
        path: '/contactEdit',
        query: {
          index
        }
      })
    },
    choseContact (contact) {
      // 切换联系人
      this.$store.commit('order/set_order_contact', contact)
      // 跳转到订单页
      // this.$router.replace('/order')
    }
  },
  components: {
    // 注册公共头部
    CommonHead
  },
  computed: {
    ...mapState({
      // 联系人
      contacts: (state) => state.contact.contacts
      // 默认联系人
      // people: state => state.order.people
    })
  }
}
</script>

<style lang="scss" scoped>
.wrap {
  padding-top: 100px;
}
</style>
